﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ZFine.Domain;
using ZFine.Domain.Entity;

namespace Entity.ProjectEnt
{
    public class OperationGudaoCarEntity : IEntity<OperationGudaoCarEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
    {
        public string F_Id { get; set; }
        public string F_CreatorUserId { get; set; }
        public DateTime? F_CreatorTime { get; set; }
        /// <summary>
        ///逻辑删除标记
        /// </summary>
        public bool? F_DeleteMark { get; set; }
        /// <summary>
        /// 删除实体的用户
        /// </summary>
        public string F_DeleteUserId { get; set; }
        /// <summary>
        /// 删除实体时间
        /// </summary>
        public DateTime? F_DeleteTime { get; set; }
        public string F_LastModifyUserId { get; set; }
        public DateTime? F_LastModifyTime { get; set; }

        ////历史数据
        //public virtual ICollection<HistoryGudaoCarEntity> HistoryGudaoCarEntity { get; set; }
        ///// <summary>
        ///// 当前数据
        ///// </summary>
        //public virtual ICollection<GudaoCarEntity> GudaoCarEntity { get; set; }

        ///// <summary>
        ///// 自增操作编号
        ///// </summary>
        //public int? OperationNum { get; set; }

        ///// <summary>
        ///// 当前操作编号
        ///// </summary>
        //public int? ThisOperationNum { get; set; }

        ///// <summary>
        ///// 回退可执行的操作编号
        ///// </summary>
        //public int? ReturnOperationNum { get; set; }

        /// <summary>
        /// 操作时间
        /// </summary>
        public DateTime? OperationTime { get; set; }

        /// <summary>
        /// 是否是回退数据
        /// </summary>
        public bool? IsRollBack { get; set; }

        /// <summary>
        /// 回退时间
        /// </summary>
        public DateTime? RollbackTime { get; set; }


        /// <summary>
        /// 是否执行（已经执行的不能回退）
        /// </summary>
        public bool? IsExecute { get; set; }

        /// <summary>
        /// 执行时间
        /// </summary>
        public DateTime? ExecuteDateTime { get; set; }

        /// <summary>
        /// 操作类型 （0股道添加车辆/1起票/2计划/3统计运量/4放行/5对位/6排车/7取消起票/8取消统计/9取消放行/10取消对位/11回收重装）
        /// </summary>
        public int? OperationType { get; set; }

        /// <summary>
        /// 操作人员
        /// </summary>
        public virtual UserEntity OperationPersion { get; set; }
        /// <summary>
        /// 发货员
        /// </summary>
        public virtual UserEntity FaHuoYuan { get; set; }
        /// <summary>
        ///给放行的人加工资
        /// </summary>
        public virtual UserEntity SalaryPeople { get; set; }
        /// <summary>
        /// 计划操作说明
        /// </summary>
        public virtual WorkPlanEntity WorkPlan { get; set; }

        /// <summary>
        /// 当前操作的班次
        /// </summary>
        public string Banci { get; set; }
        public bool? State { get; set; }
    }
}
